PickLock: A Deadlock Prediction Approach under Nested Locking

نویسنده

  • Francesco Sorrentino
چکیده

We study the problem of determining whether from a run of a concurrent program, we can predict alternate deadlocking executions of it. We show that if a concurrent program adopts nested locking, the problem of predicting deadlocks is efficiently solvable without exploring all interleavings. In this work we present a fundamentally new predictive approach to detect deadlocks in concurrent programs, not based on cycle detection in lock-graphs. The idea is to monitor an arbitrary run of a concurrent program, use it to predict alternate runs that could be deadlocking, and reschedule them accurately. We implement our prediction algorithm in a tool called PICKLOCK, which is a modular extension of the PENELOPE framework [33]. We show experimentally that PICKLOCK scales well and is effective in predicting deadlocks. In particular, we evaluate it over 13 benchmark concurrent programs and find about 11 deadlocks by using only a single test run as the prediction seed for each benchmark.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Concurrency Control Scheme for Nested Transactions

Locking rules for concurrency control in nested transaction model, in which parent/child parallelism, sibling parallelism, and arbitrary commitment-dependence relationship between transactions are allowed, are presented. The locking rules are based on the lock transformation scheme that never allows the commit deadlock to occur, which could happen by permitting parent/child parallelism. In addi...

متن کامل

Pre-Analysis Locking: A Safe and Deadlock Free Locking Policy

A safe and deadlock free lock policy is introduced, called pre-analysis locking. Pre-analysis locking is based on an efficient geometric algorithm which inserts lock and unlock operations into the transactions. Pre-analysis locking is the first safe and deadlock free general locking policy which is not a variant of two-phase locking. It is an approach conceptually different from policies follow...

متن کامل

Simulating Escrow Transactions

Long running transactions, such as online purchases, severely reduce throughput under standard locking protocols such as two-phase locking. We investigated the use of escrow transactions to remove the need to wait for locks, and thus reduced the average transaction runtime. Escrow transactions allow transactions to borrow a quantity from the record until the transaction aborts or commits and to...

متن کامل

A Locking Algorithm with Premature Unlocks

Standard locking protocols exhibit superior performance than other families of concurrency control mechanisms under a wide range of database (DB) workloads and system conngurations. Nevertheless, they have some drawbacks such as unnecessary waiting, which cause an unacceptable behaviour particularly in environments where long transactions (long TAs (LTAs)) are present. In this paper a locking a...

متن کامل

Concurrency Control in Real - Time Database Systems : Optimistic Scheme vs . Two - Phase Locking

The two-phase locking approach widely used for concurrency control in database systems have some inherent disadvantages such as deadlock and unpredictable blocking time. These appear to be serious problems with respect to real-time transaction processing , since in a real-time environment transactions need to meet their time constraints as well as their consistency requirements. Integrated with...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2015